<?php
App::uses('AppController', 'Controller');
/**
 * Produtos Controller
 *
 * @property Produto $Produto
 */
class ProdutosController extends AppController {
	var $components = array('Curl');
	var $paginate = array();

/**
 * index method
 *
 * @return void
 */
	public function index() {
		
		if ($this->request->is('post') && isset($this->request->data['Filter']['descricao'])) {
			if (!empty($this->request->data['Filter']['descricao'])) {
				$this->Session->write('Produto.descricao', $this->request->data['Filter']['descricao']);
			} else {
				$this->Session->delete('Produto.descricao');
			}
		}
		
		if ($this->Session->check('Produto.descricao')) {
			$descricao = $this->Session->read('Produto.descricao');
			if (!empty($descricao)) {
				$this->request->data['Filter']['descricao'] = $descricao;
				$this->paginate['conditions']['OR'] = array(
						'Produto.descricao ILIKE' => '%' . $this->Session->read('Produto.descricao') . '%',
				);
			}
		}
		
		$this->Produto->recursive = 0;
		$this->set('produtos', $this->paginate());
	}

/**
 * view method
 *
 * @param string $id
 * @return void
 */
	public function view($id = null) {
		$this->Produto->id = $id;
		if (!$this->Produto->exists()) {
			throw new NotFoundException(__('Invalid produto'));
		}
		$this->set('produto', $this->Produto->read(null, $id));
	}

/**
 * add method
 *
 * @return void
 */
	public function add() {
		if ($this->request->is('post')) {
			$this->Produto->create();
			if ($this->Produto->save($this->request->data)) {
				$this->Session->setFlash(__('The produto has been saved'));
				$this->redirect(array('action' => 'index'));
			} else {
				$this->Session->setFlash(__('The produto could not be saved. Please, try again.'));
			}
		}
	}

/**
 * edit method
 *
 * @param string $id
 * @return void
 */
	public function edit($id = null) {
		$this->Produto->id = $id;
		if (!$this->Produto->exists()) {
			throw new NotFoundException(__('Invalid produto'));
		}
		if ($this->request->is('post') || $this->request->is('put')) {
			if ($this->Produto->save($this->request->data)) {
				$this->Session->setFlash(__('The produto has been saved'));
				$this->redirect(array('action' => 'index'));
			} else {
				$this->Session->setFlash(__('The produto could not be saved. Please, try again.'));
			}
		} else {
			$this->request->data = $this->Produto->read(null, $id);
		}
	}

/**
 * delete method
 *
 * @param string $id
 * @return void
 */
	public function delete($id = null) {
		if (!$this->request->is('post')) {
			throw new MethodNotAllowedException();
		}
		$this->Produto->id = $id;
		if (!$this->Produto->exists()) {
			throw new NotFoundException(__('Invalid produto'));
		}
		if ($this->Produto->delete()) {
			$this->Session->setFlash(__('Produto deleted'));
			$this->redirect(array('action' => 'index'));
		}
		$this->Session->setFlash(__('Produto was not deleted'));
		$this->redirect(array('action' => 'index'));
	}	
}
